<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.3.1-20130512"/>
<title>3D Cell: cellobject.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">3D Cell
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.1-20130512 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">cellobject.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="cellobject_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#ifndef CELLOBJECT_H</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CELLOBJECT_H</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="preprocessor">#if defined(WIN32) || defined(linux)</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="preprocessor"></span><span class="preprocessor">    #include &lt;QtOpenGL/qgl.h&gt;</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="preprocessor">#elif defined(__APPLE__)</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor"></span><span class="preprocessor">    #include &lt;OpenGl/glu.h&gt;</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="bpa_8h.html">bpa.h</a>&quot;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="common_8h.html">common.h</a>&quot;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cellmath_8h.html">cellmath.h</a>&quot;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="csg_8h.html">csg.h</a>&quot;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="keyword">using namespace </span>std;</div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="code" href="class_cell_object.html">   24</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_cell_object.html" title="A Cell Object class. ">CellObject</a></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;{</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <a class="code" href="class_cell_object.html" title="A Cell Object class. ">CellObject</a>();</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    ~<a class="code" href="class_cell_object.html" title="A Cell Object class. ">CellObject</a>();</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <a class="code" href="class_cell_object.html" title="A Cell Object class. ">CellObject</a>* clone();</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="code" href="class_cell_object.html#a76787d7f1234c222351870a54ccf720e">   36</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#a76787d7f1234c222351870a54ccf720e">setName</a>(<span class="keywordtype">string</span> n) {name.assign(n.begin(), n.end());}</div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="class_cell_object.html#a0d2595c4a648a0fb35aa8ef0e4d71b1d">   38</a></span>&#160;    <span class="keywordtype">string</span> <a class="code" href="class_cell_object.html#a0d2595c4a648a0fb35aa8ef0e4d71b1d">getName</a>() {<span class="keywordflow">return</span> name;}</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;    <span class="keywordtype">void</span> CreateCellObject(<span class="keywordtype">int</span> num, vector&lt;double&gt; vec, vector&lt;double&gt; nor);</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keywordtype">void</span> DrawCellObject(<span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> selected, <span class="keywordtype">int</span> displayMode);</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;    <span class="keywordtype">void</span> DrawCellObjectDirect(<span class="keywordtype">int</span> <span class="keywordtype">id</span>, <span class="keywordtype">int</span> selected, <span class="keywordtype">int</span> secondSelected, <span class="keywordtype">int</span> displayMode);</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;    <span class="keywordtype">void</span> SurfaceReconstruction(<span class="keywordtype">double</span> radius);</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <span class="keywordtype">void</span> SaveCellObject(<span class="keywordtype">char</span> *filename);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    <span class="keywordtype">void</span> ComputeIntersectionPlane(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> b, <span class="keywordtype">double</span> c, <span class="keywordtype">double</span> d);</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <span class="keywordtype">void</span> DrawIntersectionPlane();</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    <span class="comment">//Transform Object func</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="code" href="class_cell_object.html#ac6f96c41b56535f97e66e7b2d20bf16a">   96</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#ac6f96c41b56535f97e66e7b2d20bf16a">setTranslateX</a>(<span class="keywordtype">double</span> x) {translateX = x;}</div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="code" href="class_cell_object.html#a9796d38695b3d4ebb2a7594bf867ea10">   97</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#a9796d38695b3d4ebb2a7594bf867ea10">setTranslateY</a>(<span class="keywordtype">double</span> y) {translateY = y;}</div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="code" href="class_cell_object.html#a7b47f3df3bd3a44adf1b711332d651f1">   98</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#a7b47f3df3bd3a44adf1b711332d651f1">setTranslateZ</a>(<span class="keywordtype">double</span> z) {translateZ = z;}</div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="code" href="class_cell_object.html#a7a9d3d430570bec140d079e4648bdfdf">   99</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#a7a9d3d430570bec140d079e4648bdfdf">setRotateX</a>(<span class="keywordtype">double</span> x) {rotateX = x;}</div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="class_cell_object.html#ac8780d0b5f38cd7216c3b3f6728dd818">  100</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#ac8780d0b5f38cd7216c3b3f6728dd818">setRotateY</a>(<span class="keywordtype">double</span> y) {rotateY = y;}</div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="code" href="class_cell_object.html#a11d6fcbee2d26339f215ba32bdfafe7d">  101</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#a11d6fcbee2d26339f215ba32bdfafe7d">setRotateZ</a>(<span class="keywordtype">double</span> z) {rotateZ = z;}</div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="class_cell_object.html#af2257298543d401f6d33e2ceed65e082">  102</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#af2257298543d401f6d33e2ceed65e082">setScaleX</a>(<span class="keywordtype">double</span> x) {scaleX = x;}</div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="code" href="class_cell_object.html#af6e1ec4af9a95adc6ac28b85792dc8b6">  103</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#af6e1ec4af9a95adc6ac28b85792dc8b6">setScaleY</a>(<span class="keywordtype">double</span> y) {scaleY = y;}</div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="class_cell_object.html#a7dec2b1cceae0eec8d3a257fae842b66">  104</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_cell_object.html#a7dec2b1cceae0eec8d3a257fae842b66">setScaleZ</a>(<span class="keywordtype">double</span> z) {scaleZ = z;}</div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="class_cell_object.html#aac7f26c2a71de1185ad0db12d16c8450">  105</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#aac7f26c2a71de1185ad0db12d16c8450">getTranslateX</a>() {<span class="keywordflow">return</span> translateX;}</div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="class_cell_object.html#ab7850f79c142539f838719deea08552c">  106</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#ab7850f79c142539f838719deea08552c">getTranslateY</a>() {<span class="keywordflow">return</span> translateY;}</div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="class_cell_object.html#a3ef77e1c665b8c9aef32851aab1133cc">  107</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a3ef77e1c665b8c9aef32851aab1133cc">getTranslateZ</a>() {<span class="keywordflow">return</span> translateZ;}</div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="code" href="class_cell_object.html#acb7b46484d01f8a6c2a73fb9e21c7a26">  108</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#acb7b46484d01f8a6c2a73fb9e21c7a26">getRotateX</a>() {<span class="keywordflow">return</span> rotateX;}</div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="class_cell_object.html#a0640c9eae6b7f5a37196cfc1b07ae3d0">  109</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a0640c9eae6b7f5a37196cfc1b07ae3d0">getRotateY</a>() {<span class="keywordflow">return</span> rotateY;}</div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="class_cell_object.html#ab666112ab76bb14a5e1a62c12ca1633a">  110</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#ab666112ab76bb14a5e1a62c12ca1633a">getRotateZ</a>() {<span class="keywordflow">return</span> rotateZ;}</div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="code" href="class_cell_object.html#a3e177e622d552bb523b240ce01671a85">  111</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a3e177e622d552bb523b240ce01671a85">getScaleX</a>() {<span class="keywordflow">return</span> scaleX;}</div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="code" href="class_cell_object.html#a789a09cfc40efe4195b0f1d6004ab791">  112</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a789a09cfc40efe4195b0f1d6004ab791">getScaleY</a>() {<span class="keywordflow">return</span> scaleY;}</div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="code" href="class_cell_object.html#a5e391abed7e2b54fb69b1ac4633b1f98">  113</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a5e391abed7e2b54fb69b1ac4633b1f98">getScaleZ</a>() {<span class="keywordflow">return</span> scaleZ;}</div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="class_cell_object.html#a5f1d3f245b7b26b5998361ce4c313539">  114</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a5f1d3f245b7b26b5998361ce4c313539">getAxisX</a>(<span class="keywordtype">int</span> i) {<span class="keywordflow">return</span> axisX[i];}</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="class_cell_object.html#ae465329518ba914721422f3193578c44">  115</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#ae465329518ba914721422f3193578c44">getAxisY</a>(<span class="keywordtype">int</span> i) {<span class="keywordflow">return</span> axisY[i];}</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="code" href="class_cell_object.html#a9f0cfaea167657b5826832b398e6d186">  116</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a9f0cfaea167657b5826832b398e6d186">getAxisZ</a>(<span class="keywordtype">int</span> i) {<span class="keywordflow">return</span> axisZ[i];}</div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="code" href="class_cell_object.html#adcc4b4f7cdfa5928ed3694fdcd99d313">  117</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="class_cell_object.html#adcc4b4f7cdfa5928ed3694fdcd99d313">isSurfaceConstructed</a>() {<span class="keywordflow">return</span> is_surface_constructed;}</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="class_cell_object.html#a875df313c4b442cc9cbe26ebca7d9760">  120</a></span>&#160;    <span class="keywordtype">double</span> rotateMatrix[4][4];</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <span class="keywordtype">void</span> AxisRotate();</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    <span class="comment">//Edit Mesh func</span></div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment"></span>    <span class="keywordtype">void</span> drawEditPoint();</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    <span class="keywordtype">void</span> resetSelectedPoint();</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;    <span class="keywordtype">void</span> setPointSelect(<span class="keywordtype">int</span> index);</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordtype">void</span> setPointsSelectInArea(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> point[8], <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> view, <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> up);</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    <span class="keywordtype">int</span> selectPointsCenter(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> &amp;center);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    <span class="keywordtype">void</span> moveSelectPoints(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> vec);</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    <span class="keywordtype">void</span> moveSelectPointsFeather(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> vec, <span class="keywordtype">double</span> percent);</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    <span class="keywordtype">void</span> deleteSelectPoint();</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;    <span class="keywordtype">void</span> drawEditFaces();</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    <span class="keywordtype">void</span> resetSelectedFace();</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    <span class="keywordtype">void</span> setFaceSelect(<span class="keywordtype">int</span> index);</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keywordtype">void</span> setFacesSelectInArea(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> point[8], <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> view, <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> up);</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;</div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;    <span class="keywordtype">int</span> selectFacesCenter(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> &amp;center);</div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    <span class="keywordtype">void</span> moveSelectFaces(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> vec);</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    <span class="keywordtype">void</span> moveSelectFacesFeather(<a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> vec, <span class="keywordtype">double</span> percent);</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;    <span class="keywordtype">void</span> deleteSelectFace();</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <span class="comment">//Build Object func</span></div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    <span class="keywordtype">void</span> buildSphere(<span class="keywordtype">double</span> radius, <span class="keywordtype">int</span> hseg, <span class="keywordtype">int</span> wseg);</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <span class="keywordtype">void</span> buildCylinder(<span class="keywordtype">double</span> radius, <span class="keywordtype">double</span> height, <span class="keywordtype">int</span> wseg, <span class="keywordtype">int</span> hseg);</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;    <span class="keywordtype">void</span> buildOpenCylinder(<span class="keywordtype">double</span> radius, <span class="keywordtype">double</span> height, <span class="keywordtype">int</span> wseg, <span class="keywordtype">int</span> hseg);</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    <span class="keywordtype">void</span> buildCube(<span class="keywordtype">double</span> xlength, <span class="keywordtype">double</span> ylength, <span class="keywordtype">double</span> zlength, <span class="keywordtype">int</span> xseg, <span class="keywordtype">int</span> yseg, <span class="keywordtype">int</span> zseg);</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <span class="keywordtype">void</span> buildPlane(<span class="keywordtype">double</span> xlength, <span class="keywordtype">double</span> zlength, <span class="keywordtype">int</span> xseg, <span class="keywordtype">int</span> zseg);</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    <span class="keywordtype">void</span> buildCone(<span class="keywordtype">double</span> height, <span class="keywordtype">double</span> radius, <span class="keywordtype">int</span> wseg);</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keywordtype">void</span> buildObject(<span class="keywordtype">int</span> v_num, <span class="keywordtype">int</span> f_num, <span class="keywordtype">double</span> *ver, <span class="keywordtype">double</span> *nor, <span class="keywordtype">int</span> *f);</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div>
<div class="line"><a name="l00276"></a><span class="lineno"><a class="code" href="class_cell_object.html#a5474ebf6405f663a202f04d5fda9713f">  276</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a5474ebf6405f663a202f04d5fda9713f" title="Return the face number of this object. ">getFaceNum</a>() {<span class="keywordflow">return</span> face_num;}</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div>
<div class="line"><a name="l00279"></a><span class="lineno"><a class="code" href="class_cell_object.html#ab69ffea795f5ce91e2686970081d5553">  279</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ab69ffea795f5ce91e2686970081d5553" title="Return the vertice number of this object. ">getVerticeNum</a>() {<span class="keywordflow">return</span> vertice_num;}</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;</div>
<div class="line"><a name="l00282"></a><span class="lineno"><a class="code" href="class_cell_object.html#a4502dd8cf6bae786ae245ea071f23e48">  282</a></span>&#160;    <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> <a class="code" href="class_cell_object.html#a4502dd8cf6bae786ae245ea071f23e48" title="Return one vertex position. ">getVertice</a>(<span class="keywordtype">int</span> index) {<span class="keywordflow">return</span> <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a>(vertice[index*3+0], vertice[index*3+1], vertice[index*3+2]);}</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;</div>
<div class="line"><a name="l00285"></a><span class="lineno"><a class="code" href="class_cell_object.html#a092bbee3cfb709abd154861a7bd661e0">  285</a></span>&#160;    <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a> <a class="code" href="class_cell_object.html#a092bbee3cfb709abd154861a7bd661e0" title="Return one vertex normal. ">getNormal</a>(<span class="keywordtype">int</span> index) {<span class="keywordflow">return</span> <a class="code" href="class_vector3.html" title="A Vector3 class. ">Vector3</a>(normals[index*3+0], normals[index*3+1], normals[index*3+2]);}</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;</div>
<div class="line"><a name="l00288"></a><span class="lineno"><a class="code" href="class_cell_object.html#a96963a11106dbafc35f0c601fd0bd1e0">  288</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a96963a11106dbafc35f0c601fd0bd1e0" title="Return one face index. ">getFace</a>(<span class="keywordtype">int</span> index) {<span class="keywordflow">return</span> face[index];}</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    <span class="keywordtype">void</span> transformVertex();</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    <span class="keywordtype">void</span> transformCSG();</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;    <span class="keywordtype">void</span> toCSG();</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    <span class="keywordtype">void</span> toObject();</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    <span class="keywordtype">void</span> setCSG(<a class="code" href="class_c_s_g.html" title="A Constructive Solid Geometry (CSG) class. ">CSG</a> *csg);</div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;</div>
<div class="line"><a name="l00306"></a><span class="lineno"><a class="code" href="class_cell_object.html#adb4695833a5f3a632968ab0a49840e41">  306</a></span>&#160;    <a class="code" href="class_c_s_g.html" title="A Constructive Solid Geometry (CSG) class. ">CSG</a>* <a class="code" href="class_cell_object.html#adb4695833a5f3a632968ab0a49840e41" title="Get csg. ">getCSG</a>() {<span class="keywordflow">return</span> csgObject;}</div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;</div>
<div class="line"><a name="l00309"></a><span class="lineno"><a class="code" href="class_cell_object.html#ac9cd4706f605bc2fa183b5bd3d4e478a">  309</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ac9cd4706f605bc2fa183b5bd3d4e478a" title="Get type. ">getType</a>() {<span class="keywordflow">return</span> type;}</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div>
<div class="line"><a name="l00311"></a><span class="lineno"><a class="code" href="class_cell_object.html#a75b18c98f66bd26542bfda257ac0bfe7">  311</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a75b18c98f66bd26542bfda257ac0bfe7">getSphereRadius</a>() {<span class="keywordflow">return</span> sphereRadius;}</div>
<div class="line"><a name="l00312"></a><span class="lineno"><a class="code" href="class_cell_object.html#ae8262c2f8d33299f9241a31897778b73">  312</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ae8262c2f8d33299f9241a31897778b73">getSphereAxisSeg</a>() {<span class="keywordflow">return</span> sphereAxisSeg;}</div>
<div class="line"><a name="l00313"></a><span class="lineno"><a class="code" href="class_cell_object.html#a5763ea4621372749fabdd37f6cb63675">  313</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a5763ea4621372749fabdd37f6cb63675">getSphereHeightSeg</a>() {<span class="keywordflow">return</span> sphereHeightSeg;}</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div>
<div class="line"><a name="l00315"></a><span class="lineno"><a class="code" href="class_cell_object.html#af293d16236bd942af101cd9a992f4e80">  315</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#af293d16236bd942af101cd9a992f4e80">getCylinderRadius</a>() {<span class="keywordflow">return</span> cylinderRadius;}</div>
<div class="line"><a name="l00316"></a><span class="lineno"><a class="code" href="class_cell_object.html#a444832cd292d311022487c3c71e34309">  316</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a444832cd292d311022487c3c71e34309">getCylinderHeight</a>() {<span class="keywordflow">return</span> cylinderHeight;}</div>
<div class="line"><a name="l00317"></a><span class="lineno"><a class="code" href="class_cell_object.html#ad23b2575c3d30a7b9952dd0f0c58505c">  317</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ad23b2575c3d30a7b9952dd0f0c58505c">getCylinderHeightSeg</a>() {<span class="keywordflow">return</span> cylinderHeightSeg;}</div>
<div class="line"><a name="l00318"></a><span class="lineno"><a class="code" href="class_cell_object.html#a89a06b6ba84b0e2cb4187c0cafeaedb1">  318</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a89a06b6ba84b0e2cb4187c0cafeaedb1">getCylinderAxisSeg</a>() {<span class="keywordflow">return</span> cylinderAxisSeg;}</div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;</div>
<div class="line"><a name="l00320"></a><span class="lineno"><a class="code" href="class_cell_object.html#a14d41ab3a33aa0eb8ead9b14d034fc56">  320</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a14d41ab3a33aa0eb8ead9b14d034fc56">getPlaneWidth</a>() {<span class="keywordflow">return</span> planeWidth;}</div>
<div class="line"><a name="l00321"></a><span class="lineno"><a class="code" href="class_cell_object.html#a0b6f30829cfcdd5b5aa83289c5db904b">  321</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a0b6f30829cfcdd5b5aa83289c5db904b">getPlaneDepth</a>() {<span class="keywordflow">return</span> planeDepth;}</div>
<div class="line"><a name="l00322"></a><span class="lineno"><a class="code" href="class_cell_object.html#a8ab9e79bc43a9eca9f68af45fee888ca">  322</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a8ab9e79bc43a9eca9f68af45fee888ca">getPlaneWidthSeg</a>() {<span class="keywordflow">return</span> planeWidthSeg;}</div>
<div class="line"><a name="l00323"></a><span class="lineno"><a class="code" href="class_cell_object.html#ae46f4608b9a5fa99373081886206e088">  323</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ae46f4608b9a5fa99373081886206e088">getPlaneDepthSeg</a>() {<span class="keywordflow">return</span> planeDepthSeg;}</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div>
<div class="line"><a name="l00325"></a><span class="lineno"><a class="code" href="class_cell_object.html#a0ae2886022b94f59a3d100111fd67ae7">  325</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a0ae2886022b94f59a3d100111fd67ae7">getCubeWidth</a>() {<span class="keywordflow">return</span> cubeWidth;}</div>
<div class="line"><a name="l00326"></a><span class="lineno"><a class="code" href="class_cell_object.html#a39b25ba597d18f60c4b298bce756f549">  326</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a39b25ba597d18f60c4b298bce756f549">getCubeHeight</a>() {<span class="keywordflow">return</span> cubeHeight;}</div>
<div class="line"><a name="l00327"></a><span class="lineno"><a class="code" href="class_cell_object.html#a14b5f50e42f8b5b7aac4c1ec9a0e75ed">  327</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a14b5f50e42f8b5b7aac4c1ec9a0e75ed">getCubeDepth</a>() {<span class="keywordflow">return</span> cubeDepth;}</div>
<div class="line"><a name="l00328"></a><span class="lineno"><a class="code" href="class_cell_object.html#a3fe45637d958ade8d214288fc3a22b18">  328</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a3fe45637d958ade8d214288fc3a22b18">getCubeWidthSeg</a>() {<span class="keywordflow">return</span> cubeWidthSeg;}</div>
<div class="line"><a name="l00329"></a><span class="lineno"><a class="code" href="class_cell_object.html#a584ed3d5ad1340b3080bcde1a6d4ea8c">  329</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a584ed3d5ad1340b3080bcde1a6d4ea8c">getCubeHeightSeg</a>() {<span class="keywordflow">return</span> cubeHeightSeg;}</div>
<div class="line"><a name="l00330"></a><span class="lineno"><a class="code" href="class_cell_object.html#aefb8b0e3ce23dc118d5a0b3f3359f59c">  330</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#aefb8b0e3ce23dc118d5a0b3f3359f59c">getCubeDepthSeg</a>() {<span class="keywordflow">return</span> cubeDepthSeg;}</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;</div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;</div>
<div class="line"><a name="l00342"></a><span class="lineno"><a class="code" href="class_cell_object.html#ad2a5dc5dc736448558824ca3b27f9327">  342</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ad2a5dc5dc736448558824ca3b27f9327" title="Type of the object. ">type</a>;</div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;</div>
<div class="line"><a name="l00345"></a><span class="lineno"><a class="code" href="class_cell_object.html#a4b91e554356b29c6fe876b2a2e7dec1a">  345</a></span>&#160;    GLdouble *<a class="code" href="class_cell_object.html#a4b91e554356b29c6fe876b2a2e7dec1a" title="Store all the vertice. ">vertice</a>;</div>
<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div>
<div class="line"><a name="l00348"></a><span class="lineno"><a class="code" href="class_cell_object.html#aa7f46a4aacb3373f165609db2513135e">  348</a></span>&#160;    GLdouble *<a class="code" href="class_cell_object.html#aa7f46a4aacb3373f165609db2513135e" title="Store all the normals. ">normals</a>;</div>
<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;</div>
<div class="line"><a name="l00351"></a><span class="lineno"><a class="code" href="class_cell_object.html#a26af4dfdafdabb2d6e326ce1bb5d0b0c">  351</a></span>&#160;    <span class="keywordtype">int</span> *<a class="code" href="class_cell_object.html#a26af4dfdafdabb2d6e326ce1bb5d0b0c" title="Store all the faces. ">face</a>;</div>
<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;</div>
<div class="line"><a name="l00354"></a><span class="lineno"><a class="code" href="class_cell_object.html#a036a0886007870ee7628f5e879477a24">  354</a></span>&#160;    <span class="keywordtype">bool</span> *<a class="code" href="class_cell_object.html#a036a0886007870ee7628f5e879477a24" title="Flag of all the selected points at this moment. ">selectedPoint</a>;</div>
<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;</div>
<div class="line"><a name="l00357"></a><span class="lineno"><a class="code" href="class_cell_object.html#a1ba4869b9ba220e01d66c9ab106893c8">  357</a></span>&#160;    <span class="keywordtype">bool</span> *<a class="code" href="class_cell_object.html#a1ba4869b9ba220e01d66c9ab106893c8" title="Flag of all the selected faces at this moment. ">selectedFace</a>;</div>
<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div>
<div class="line"><a name="l00360"></a><span class="lineno"><a class="code" href="class_cell_object.html#a13940c0740614f4a7e04d17396ed1b00">  360</a></span>&#160;    <span class="keywordtype">bool</span> *<a class="code" href="class_cell_object.html#a13940c0740614f4a7e04d17396ed1b00" title="Flag of all the deleted points at this moment. ">deletePoint</a>;</div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;</div>
<div class="line"><a name="l00363"></a><span class="lineno"><a class="code" href="class_cell_object.html#a03dafda22c9588986336121914c3602a">  363</a></span>&#160;    <span class="keywordtype">bool</span> *<a class="code" href="class_cell_object.html#a03dafda22c9588986336121914c3602a" title="Flag of all the deleted faces at this moment. ">deleteFace</a>;</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;</div>
<div class="line"><a name="l00366"></a><span class="lineno"><a class="code" href="class_cell_object.html#a04a4264f85d73763b0b19e1f1ac38589">  366</a></span>&#160;    vector&lt;double&gt; <a class="code" href="class_cell_object.html#a04a4264f85d73763b0b19e1f1ac38589" title="Store the edges intersection with a plane. ">intersectionPlane</a>;</div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;</div>
<div class="line"><a name="l00369"></a><span class="lineno"><a class="code" href="class_cell_object.html#a06d6cd938f2c219704cff0b3472311d3">  369</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a06d6cd938f2c219704cff0b3472311d3" title="The number of faces of the object. ">face_num</a>;</div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;</div>
<div class="line"><a name="l00372"></a><span class="lineno"><a class="code" href="class_cell_object.html#a0e21c1b3ce66d6ee6ebceffb48a8f9fa">  372</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a0e21c1b3ce66d6ee6ebceffb48a8f9fa" title="The number of vertice of the object. ">vertice_num</a>;</div>
<div class="line"><a name="l00373"></a><span class="lineno"><a class="code" href="class_cell_object.html#a966ca2211024c813912d930f3fb90377">  373</a></span>&#160;    <span class="keywordtype">double</span> translateX, translateY, <a class="code" href="class_cell_object.html#a966ca2211024c813912d930f3fb90377">translateZ</a>;</div>
<div class="line"><a name="l00374"></a><span class="lineno"><a class="code" href="class_cell_object.html#af2612a9c9c51848a2da4746ed7d25b17">  374</a></span>&#160;    <span class="keywordtype">double</span> rotateX, rotateY, <a class="code" href="class_cell_object.html#af2612a9c9c51848a2da4746ed7d25b17">rotateZ</a>;</div>
<div class="line"><a name="l00375"></a><span class="lineno"><a class="code" href="class_cell_object.html#ae552454689d0a0b71e6c2976c89bd58e">  375</a></span>&#160;    <span class="keywordtype">double</span> scaleX, scaleY, <a class="code" href="class_cell_object.html#ae552454689d0a0b71e6c2976c89bd58e">scaleZ</a>;</div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;</div>
<div class="line"><a name="l00378"></a><span class="lineno"><a class="code" href="class_cell_object.html#af2da0bdd732c639f2bf6f4c41935f492">  378</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="class_cell_object.html#af2da0bdd732c639f2bf6f4c41935f492" title="Determine if this object can use ball-pivoting algorithm. ">is_surface_constructed</a>;</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;</div>
<div class="line"><a name="l00381"></a><span class="lineno"><a class="code" href="class_cell_object.html#af03833e2a001c1c532eb7dc7d5b9036f">  381</a></span>&#160;    <span class="keywordtype">double</span> axisX[4];</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;</div>
<div class="line"><a name="l00384"></a><span class="lineno"><a class="code" href="class_cell_object.html#a6f3283c3f5eb1646c32d2d8b7a356ea3">  384</a></span>&#160;    <span class="keywordtype">double</span> axisY[4];</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div>
<div class="line"><a name="l00387"></a><span class="lineno"><a class="code" href="class_cell_object.html#a199f935c9636276d50cc77ede88055cb">  387</a></span>&#160;    <span class="keywordtype">double</span> axisZ[4];</div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;</div>
<div class="line"><a name="l00390"></a><span class="lineno"><a class="code" href="class_cell_object.html#a3c95d0e06759f56838906b6aa26e5757">  390</a></span>&#160;    <span class="keywordtype">bool</span> <a class="code" href="class_cell_object.html#a3c95d0e06759f56838906b6aa26e5757" title="If the csg of this object have been constructed. ">isCSG</a>;</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;</div>
<div class="line"><a name="l00393"></a><span class="lineno"><a class="code" href="class_cell_object.html#a4a50cc71aaaf732f50c235686f864209">  393</a></span>&#160;    <a class="code" href="class_c_s_g.html" title="A Constructive Solid Geometry (CSG) class. ">CSG</a> *<a class="code" href="class_cell_object.html#a4a50cc71aaaf732f50c235686f864209" title="The csg. ">csgObject</a>;</div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;</div>
<div class="line"><a name="l00395"></a><span class="lineno"><a class="code" href="class_cell_object.html#a0a0a9a94043982436830e51f8606df9c">  395</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a0a0a9a94043982436830e51f8606df9c">sphereRadius</a>;</div>
<div class="line"><a name="l00396"></a><span class="lineno"><a class="code" href="class_cell_object.html#aa9e0316a7f1015c63731c9b6a4884002">  396</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#aa9e0316a7f1015c63731c9b6a4884002">sphereAxisSeg</a>;</div>
<div class="line"><a name="l00397"></a><span class="lineno"><a class="code" href="class_cell_object.html#ae12994677962e4832e10d9db4d77f78b">  397</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#ae12994677962e4832e10d9db4d77f78b">sphereHeightSeg</a>;</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;</div>
<div class="line"><a name="l00399"></a><span class="lineno"><a class="code" href="class_cell_object.html#a1ac8f9c6e351053dcf8adf370e0af362">  399</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a1ac8f9c6e351053dcf8adf370e0af362">cylinderRadius</a>;</div>
<div class="line"><a name="l00400"></a><span class="lineno"><a class="code" href="class_cell_object.html#a35b37d2543cf18eb009c2f4289ea736f">  400</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a35b37d2543cf18eb009c2f4289ea736f">cylinderHeight</a>;</div>
<div class="line"><a name="l00401"></a><span class="lineno"><a class="code" href="class_cell_object.html#abf2f5f37c4c426ab21849ab493480d14">  401</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#abf2f5f37c4c426ab21849ab493480d14">cylinderHeightSeg</a>;</div>
<div class="line"><a name="l00402"></a><span class="lineno"><a class="code" href="class_cell_object.html#a3b0c9bd91c5f890d71147357b8d6d25c">  402</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a3b0c9bd91c5f890d71147357b8d6d25c">cylinderAxisSeg</a>;</div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;</div>
<div class="line"><a name="l00404"></a><span class="lineno"><a class="code" href="class_cell_object.html#a846957e7bb57f9dd79258c8ddb26b4e3">  404</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a846957e7bb57f9dd79258c8ddb26b4e3">planeWidth</a>;</div>
<div class="line"><a name="l00405"></a><span class="lineno"><a class="code" href="class_cell_object.html#a97509a216b0d64e5023fb3465052b7e2">  405</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a97509a216b0d64e5023fb3465052b7e2">planeDepth</a>;</div>
<div class="line"><a name="l00406"></a><span class="lineno"><a class="code" href="class_cell_object.html#a7577dbcd8856f65ebe294f85a5b288bd">  406</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a7577dbcd8856f65ebe294f85a5b288bd">planeWidthSeg</a>;</div>
<div class="line"><a name="l00407"></a><span class="lineno"><a class="code" href="class_cell_object.html#a12ef97c4dc4a4a4f054d2e8a483a22d6">  407</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a12ef97c4dc4a4a4f054d2e8a483a22d6">planeDepthSeg</a>;</div>
<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;</div>
<div class="line"><a name="l00409"></a><span class="lineno"><a class="code" href="class_cell_object.html#af30828580a04174a25eb071f87021cee">  409</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#af30828580a04174a25eb071f87021cee">cubeWidth</a>;</div>
<div class="line"><a name="l00410"></a><span class="lineno"><a class="code" href="class_cell_object.html#a8ee898efdf140d26bff610f5bd6235f6">  410</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#a8ee898efdf140d26bff610f5bd6235f6">cubeHeight</a>;</div>
<div class="line"><a name="l00411"></a><span class="lineno"><a class="code" href="class_cell_object.html#ac371e5980701c1c9fe236773f18ac8d1">  411</a></span>&#160;    <span class="keywordtype">double</span> <a class="code" href="class_cell_object.html#ac371e5980701c1c9fe236773f18ac8d1">cubeDepth</a>;</div>
<div class="line"><a name="l00412"></a><span class="lineno"><a class="code" href="class_cell_object.html#abd24ef948d20c41477ea4b441125c4be">  412</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#abd24ef948d20c41477ea4b441125c4be">cubeWidthSeg</a>;</div>
<div class="line"><a name="l00413"></a><span class="lineno"><a class="code" href="class_cell_object.html#a7fd7e9c89ae8bd0944796ee4b187564f">  413</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#a7fd7e9c89ae8bd0944796ee4b187564f">cubeHeightSeg</a>;</div>
<div class="line"><a name="l00414"></a><span class="lineno"><a class="code" href="class_cell_object.html#afd712fc9d9578aca0376fb8170c935e6">  414</a></span>&#160;    <span class="keywordtype">int</span> <a class="code" href="class_cell_object.html#afd712fc9d9578aca0376fb8170c935e6">cubeDepthSeg</a>;</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div>
<div class="line"><a name="l00416"></a><span class="lineno"><a class="code" href="class_cell_object.html#af930d51de2c5a2aa31511e5a3435a18a">  416</a></span>&#160;    <span class="keywordtype">string</span> <a class="code" href="class_cell_object.html#af930d51de2c5a2aa31511e5a3435a18a">name</a>;</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;};</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;<span class="preprocessor">#endif // CELLOBJECT_H</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Tue Jul 9 2013 15:49:57 for 3D Cell by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3.1-20130512
</small></address>
</body>
</html>
